package com.jctrip.hotel.domain.entity;

import lombok.*;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 渠道订单记录表(ht_order_route_record)表实体类
 *
 * @author makejava
 * @since 2023-06-17 16:22:44
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class HtOrderRouteRecord extends BaseEntity {

    //系统订单号
    private String orderId;
    //渠道订单号
    private String routeOrderId;
    //渠道扩展订单号
    private String routeExtendOrderId;
    //渠道账户id
    private String routeId;
    //渠道编号
    private String routeCode;
    //渠道频道编号
    private String routeChannelCode;
    //渠道酒店编号
    private String routeHotelId;
    //渠道酒店名称
    private String routeHotelName;
    //渠道订单状态(0-未支付；10-已支付；20-已确认；21-拒绝新订；30-已完成；40-申请取消；41-同意取消；42-拒绝取消；50-已退款)
    private Integer routeOrderStatus;
    //渠道房型编号
    private String routeRoomTypeCode;
    //渠道房型名称
    private String routeRoomTypeName;
    //渠道房价计划编号
    private String routeRatePlanCode;
    //渠道房价计划名称
    private String routeRatePlanName;
    //入住日期(yyyy-MM-dd)
    private Date arriveDate;
    //退房日期(yyyy-MM-dd)
    private Date departDate;
    //最晚到店时间(yyyy-MM-dd HH:mm:ss)
    private Date latestArriveTime;
    //早餐数量
    private Integer breakfastCount;
    //入住间数
    private Integer roomCount;
    //入住人数
    private Integer occupancy;
    //库存类型(0=未知；1=限售库存；2=保留房库存；3=物理库存；4=超预定库存
    private Integer stockType;
    //价格模式(0=卖价模式；1=底价模式)
    private Integer priceType;
    //支付类型(1=预付；2=现付；3=信用类后付)
    private Integer paymentType;
    //支付金额
    private BigDecimal paymentPrice;
    //渠道佣金
    private BigDecimal commissionPrice;
    //应收金额
    private BigDecimal receivablePrice;
    //利润金额
    private BigDecimal profitPrice;
    //币种
    private String currencyCode;
    //联系人
    private String contactName;
    //联系电话
    private String contactTel;
    //联系邮箱
    private String contactEmail;
    //入住人(多人，逗号分隔)
    private String guestName;
    //入住人电话
    private String guestTel;
    //商旅-企业统一支付(0=否；1=是)
    private Integer companyPayment;
    //商旅-企业名称
    private String companyName;
    //订单备注
    private String orderNotes;
    //支付编号
    private String paymentId;
    //人工备注
    private String manualNotes;
    //操作账户
    private String operator;
    //订单创建时间(yyyy-MM-dd HH:mm:ss)
    private Date orderCreateTime;
    //订单支付时间(yyyy-MM-dd HH:mm:ss)
    private Date orderPaymentTime;
    //订单确认时间(yyyy-MM-dd HH:mm:ss)
    private Date orderConfirmTime;
    //订单申请退款时间(yyyy-MM-dd HH:mm:ss)
    private Date orderRefundTime;
    //订单实际退款时间(yyyy-MM-dd HH:mm:ss)
    private Date orderCancelTime;
}
